Method and apparatus for controlling storage means in information processing system

ABSTRACT

A storage means control apparatus of this invention includes a first processing unit for performing write processing in a first storage unit, a second processing unit for performing write processing in a second storage unit, a revealing data control unit for managing revealing data representing storage areas where the first processing unit has performed write processing in the first storage unit ( 101 ), another revealing data control unit for managing another revealing data representing storage areas where the second processing unit has performed write processing in the second storage unit, a priority data control unit for managing priority data representing a priority of each of the first and second processing units in units of storage areas of the second storage unit, a inhibition data control unit for managing inhibition data for inhibiting write processing in each storage area of the second storage unit using the priority data and the revealing data, and a processing data reflection unit for writing the data written in the first storage unit ( 101 ) in the second storage unit on the basis of the inhibition data. With this arrangement, when each write control unit in a plurality of processing units performs write processing in the storage unit of the self processing unit, matching of stored contents among the units can be ensured.

BACKGROUND OF THE INVENTION

[0001] The present invention relates to a method and apparatus forcontrolling a storage means and, more particularly, to a method andapparatus for controlling write processing when a plurality ofprocessing means parallelly generate write requests.

[0002] In a recent communication system of an ATM (Asynchronous TransferMode) or the like, a plurality of data processing means such asprocessors perform various processing operations using external orinternal storage units.

[0003] In such a system, it is important to keep matching of data amongthe storage units with contents related to each other when the pluralityof processors parallelly issue requests for write processing in thestorage units. In addition, when the plurality of data processing meansare to almost simultaneously use stored data related to each other, usepriorities of the data processing means must be taken intoconsideration, or matching of data along the time axis must be ensured.That is, when a plurality of write requests are generated, the latestdata must always be preferentially overwritten.

[0004] A general parallel write control method by a plurality of dataprocessing means for a plurality of storage units will be describedbelow by way of some examples.

[0005] Assume counter values “0” to “3” described in tablescorresponding to identifiers included in headers of communication cellssuch as ATM cells. For the descriptive convenience, one identifier isassumed to correspond to an index for referring to a table. The entityof this table is stored in a main storage unit outside the communicationapparatus.

[0006] Every time a cell having an identifier which has not been usedfor internal processing yet is received by the communication apparatusat a predetermined period (period shorter than the long processingperiod on the host side), a duplicate of data stored in the main storageunit with an index corresponding to the identifier is stored in astorage unit in the communication apparatus and, more specifically, acache memory. Upon completion of processing of a cell having the sameidentifier, the content written in the cache memory is rewritten in themain storage unit.

[0007] On the host side outside the communication apparatus, a seconddata processing means increments the counter values of the tablescorresponding to all indices in the main storage unit by one at apredetermined period (long period). In the communication apparatus,every time a cell is received, a first data processing means loads atable corresponding to the identifier from index data in the cachememory and initializes the counter value to “0”, thereby reflecting thedata in the main storage unit on the cache memory.

[0008] The second data processing means independently performs writeprocessing in the main storage unit. The first data processing meansindependently performs processing for the cache memory. Therefore,unless stored data having the same index are written in overlapping timeperiods, matching of these stored data is not degraded by writeprocessing in the main storage unit and the cache memory.

[0009] However, the main storage unit and the cache memory have therelationship between an entity and a duplicate. When stored data havingthe same index are independently written in the main storage unit andthe cache memory in overlapping time periods, matching of these storeddata may be degraded in rewrite processing of the contents stored in thecache memory in the main storage unit.

[0010] Assume that the counter value of the table is “1”, and the seconddata processing means increments the counter value to “2”. The seconddata processing means refers to the table in the main storage unit toincrement the counter value of the table. At this time point, thecounter value of the table is still “1”. The second data processingmeans loads the counter value “1”, increments the counter value by one,and writes “2” in the table of the main storage unit.

[0011] In some cases, communication cells having identifiersrepresenting the same index are received by the communication apparatuswhile the second data processing means loads the table and rewrites thecounter value. If the first data processing means has initialized thecounter value to “0”, the counter value “2” rewritten by the second dataprocessing means is based on the counter value “1”, i.e., old databefore processing by the first data processing means. For this reason,the second data processing means overwrites the counter value “2”,although the counter value “1” obtained by incrementing the initializedcounter value “0” by one is supposed to be rewritten, thus degrading thematching.

[0012] Such mismatching of stored data among the plurality of storageunits results from the fact that the data processing means forindependently performing processing for the storage units cannot performreal-time processing. Therefore, when the stored data are to beparallelly processed in almost overlapping time periods by a pluralityof factors, the problem of mismatching cannot be avoided.

[0013] Conventionally, to maintain matching of stored data, two or moredata processing means sequentially perform write processing in thecorresponding storage units such that the processing periods of the dataprocessing means do not overlap. When a certain data processing means isperforming processing including write processing in the storage unit inthe same processing block, and another independent data processing meansis to perform processing including write processing in the storage unitin the self processing block, less urgent processing must wait untilmore urgent processing is ended.

[0014] More specifically, assume that the second data processing meansfor incrementing the counter by one and the first data processing meansfor initializing the counter value to “0” are to perform processing oftable data corresponding to the same index in overlapping periods. Evenwhen the data processing means has already started a series ofprocessing operations from counter value load processing to countervalue rewrite processing in the counter, processing performed by thesecond data processing means so far is canceled when the first dataprocessing means having a high urgency level generates a request forloading the same index. After the counter value is initialized to “0” bythe first data processing means, the second data processing means loadsthe counter value again, increments the counter value by one, andrewrites the counter-value “1”.

[0015] Two conventional techniques are used to ensure matching of storeddata. One is called an updating scheme. When data is written in acertain storage means on the duplicate side, data in all the remainingstorage means on the duplicate side and all storage means on the entityside are updated to the rewritten data.

[0016] The other technique is called an invalid scheme. When data iswritten in a certain storage means on the duplicate side, all theremaining storage means and all storage means on the entity side arenotified of the address data of this storage area. With this processing,it is notified that data which has already been written in the storagearea at the address is not the latest data, thus invalid the data in theremaining storage means.

[0017] In the updating scheme, when one data processing means haswritten data in the storage area of a storage means in the sameprocessing block, other data processing means which are going to writedata in the same storage area cancel all processing operations.Processing in the storage means in the self processing block must beuselessly performed later again from the beginning.

[0018] In the invalid scheme as well, if data stored in the storagesubjected to write processing or reference is invalidated, data in thestorage area must be read out again to perform processing again from thebeginning.

[0019] In both the above schema, write processing in the same storagearea must be sequentially performed.

[0020] Conventionally, to protect matching of stored data, when two ormore data processing means are to write data in the same storage area,processing of each data processing means must be sequentially performed.

[0021] However, when data stored in the same storage area is to becontinuously used for a long time by a data processing means which has ahigh urgency level and has started processing first, a data processingmeans which has a low urgency level and therefore must performprocessing later waits for its processing. In some cases, the dataprocessing means with the high urgency level cannot complete processingwithin a predetermined time period when the data processing means withthe low urgency level must perform processing.

[0022] The above-described counter in the communication table will beconsidered. While cells having the same index are continuously processedthrough a pipeline, the first data processing means continuouslyperforms processing using stored data corresponding to the index. Inthis case, the second data processing means waits for processing. Insome cases, the first data processing means cannot complete processingwithin the time limit that the second data processing means mustcomplete processing.

[0023] Conventionally, although data written on the duplicate side iswritten on the entity side, data newly written on the entity side is notreflected on the duplicate side.

[0024] For example, when the first data processing means has writtendata in the above-described table of the cache memory in which thecounter value is stored, the data can be reflected in rewriting thestored data from the cache memory side to the main storage unit side.However, in the prior art, data written by the second data processingmeans in the main storage unit is not reflected on the cache memory sidewhere the data has already been cached. This causes the followingdisadvantages.

[0025] When cells with the same index data continuously exist at leastin the pipeline, stored data which has been load once is continuouslyused without being newly read out from the main storage unit, therebyincreasing the cache efficiency. Assume that a cache memory holdingstored data corresponding to a certain index is continuously used for along time. Even when the second data processing means performsprocessing during this period, rewrite of the stored data correspondingto the index is not reflected on the cache memory side. Therefore, thefirst data processing means performs processing by continuously usingold stored data which has not been rewritten by the second dataprocessing means.

[0026] In a communication control apparatus such as an ATM switchingsystem whose development is in progress, processing associated with acell is performed using an internal cache memory, and processing for themaintenance/operation of all lines is often performed using a mainstorage unit. In this situation, if the capacity of the storage area ofthe cache memory is increased to improve the cache efficiency, data forone line may be kept cached for a long time. Assuming that the contentswhich have been rewritten in the main storage unit are not reflected onthe already cached stored data, as in the prior art, if line data isfrequently used for cell processing, processing for themaintenance/operation of cache lines degrades matching of stored data inthe cache memory which is performing cell processing.

[0027] In addition, assume that when write processing by a plurality ofdata processing means in the same storage area congest, processing is tobe sequentially performed. If processing operations at short periodscongest during a processing operation at a long period, the processingoperation at the long period must wait. However, both the processingoperations congest once or more at a long period, the processingoperation at the long period is substantially disabled.

[0028] Assume that, processing associated with a cell is performed usingthe internal cache memory, and processing for the maintenance/operationof all lines is performed using the main storage unit. In this case, ifa large-scale line is set, the cell arrival frequency of this linebecomes high. When a line flow {fraction (1/16)} that of all lines isset for a line A, a cell arrives at the line A every a 16-cell period.If processing for the maintenance/operation of all lines takes a timecorresponding to the 16-cell period, a cell arrives at the line A at avery high probability for this 16-cell period, so the processing for themaintenance/operation of the line A is substantially disabled. Thistendency becomes more conspicuous as the line flow increases, and theprocessing time for a long period increases. If the total line flow issubstantially occupied by one line, maintenance/operation processing oflines is completely disabled.

SUMMARY OF THE INVENTION

[0029] It is an object of the present invention to provide a storagemeans control method and apparatus for allowing parallelly arranged dataprocessing means for processing stored data to read/write a plurality ofstored data without degrading matching among the stored data.

[0030] According to the present invention, there is provided a storagemeans control method comprising the steps of causing first processingmeans to perform write processing in first storage means, causingrevealing data control means to manage revealing data representingstorage areas where the first processing means has performed writeprocessing in the first storage means, causing priority data controlmeans to manage priority data representing a priority of writeprocessing of the first processing means in units of storage areas ofsecond storage means, causing inhibition data control means to generateand manage inhibition data for inhibiting write processing in eachstorage area of the second storage means using the priority data storedin the priority data control means and the revealing data managed by therevealing data control means, and causing processing data reflectionmeans to reflect the data written in the first storage means on thesecond storage means on the basis of the inhibition data managed by theinhibition data control means.

[0031] According to the present invention, when different processingmeans are performing write processing in corresponding storage means inoverlapping periods, data with a high priority can be reflected on thedata stored in the respective storage means. Therefore, the contents ofall the storage means can be matched in accordance with the latest data.

[0032] This method may further comprise the step of causing secondprocessing means to perform write processing in second storage means. Inaddition, this method can also be applied even when the processing meansand the storage means comprise first to Nth processing means and firstto Nth storage means, respectively.

[0033] The method may further comprise the steps of changing with timeat least one of the revealing data managed by the revealing data controlmeans or the first, second, . . . , Nth revealing data managed by thefirst, second, . . . , Nth revealing data control means and the prioritydata managed by the priority data control means, and accordinglychanging with time the inhibition data managed by the inhibition datacontrol means.

[0034] The step of reflecting the data stored in the first storage meanson the data stored in the second storage means may be performed uponcompletion of processing by the first processing means. Alternatively,the step of reflecting the data stored in the second, third, . . . , Nthstorage means on the data stored in the first storage means by theprocessing data reflection means may be performed upon completion ofwrite processing in the first storage means by the first processingmeans, the step of reflecting the data stored in the first, third, . . ., Nth storage means on the data stored in the second storage means bythe processing data reflection means may be performed upon completion ofwrite processing in the second storage means by the second processingmeans, and the step of reflecting the data stored in the first, second,. . . , (N-th) storage means on the data stored in the Nth storage meansby the processing data reflection means may be performed upon completionof write processing in the Nth storage means by the Nth processingmeans.

[0035] The method may further comprise the step of causing the revealingdata control means to accumulate and manage the first, second, . . . ,Nth revealing data obtained when the first, second, . . . , Nthprocessing means perform processing in the first, second, . . . , Nthstorage means excluding Jth storage means, respectively, before Jthprocessing means of the first, second, . . . , Nth processing meanscompletes processing in the Jth storage means.

[0036] According to the present invention, there is also provided astorage means control apparatus comprising first write processing meansfor performing write processing in first storage means, revealing datacontrol means for managing revealing data representing storage areaswhere the first write processing means has performed write processing inthe first storage means, priority data control means for managingpriority data representing a priority of write processing of the firstwrite processing means in units of storage areas of second storagemeans, inhibition data control means for generating and managinginhibition data for inhibiting write processing in each storage area ofthe second storage means using the priority data managed by the prioritydata control means and the revealing data managed by the revealing datacontrol means, and processing data reflection means for writing the datawritten in the first storage means in the second storage means on thebasis of the inhibition data managed by the inhibition data controlmeans.

[0037] This arrangement can also be applied even when the processingmeans and the storage means comprise first to Nth processing means andfirst to Nth storage means, respectively.

[0038] The apparatus may further comprise means for changing with timeat least one of the revealing data managed by the revealing data controlmeans or the first, second, . . . , Nth revealing data managed by thefirst, second, . . . , Nth revealing data control means and the prioritydata managed by the priority data control means. The inhibition datamanaged by the inhibition data control means may be accordingly changedwith time, and the inhibition data may be changed along with a progressin processing by the processing means.

[0039] Processing of reflecting the data stored in the first storagemeans on the data stored in the second storage means may be performedupon completion of processing by the first processing means.Alternatively, the processing data reflection means may performprocessing of reflecting the data stored in the second, third, . . . ,Nth storage means on the data stored in the first storage means uponcompletion of write processing in the first storage means by the firstprocessing means, processing of reflecting the data stored in the first,third, . . . , Nth storage means on the data stored in the secondstorage means upon completion of write processing in the second storagemeans by the second processing means, and processing of reflecting thedata stored in the first, second, . . . , (N-th) storage means on thedata stored in the Nth storage means upon completion of write processingin the Nth storage means by the Nth processing means.

[0040] The revealing data control means may accumulate and manage thefirst, second, . . . , Nth revealing data obtained when the first,second, . . . , Nth processing means perform processing in the first,second, . . . , Nth storage means excluding Jth storage means,respectively, before Jth processing means of the first, second, . . . ,Nth processing means completes processing in the Jth storage means.

BRIEF DESCRIPTION OF THE DRAWINGS

[0041]FIG. 1 is a block diagram showing the arrangement of a storagemeans control apparatus according to an embodiment of the presentinvention;

[0042]FIG. 2 is an explanatory view showing data managed by processingunit 1 in an apparatus having three processing units so as to explainthe embodiment in more detail;

[0043]FIG. 3 is an explanatory view showing data managed by processingunit 2 in the apparatus having three processing units so as to explainthe embodiment in more detail;

[0044]FIG. 4 is an explanatory view showing data managed by processingunit 3 in the apparatus having three processing units so as to explainthe embodiment in more detail;

[0045]FIG. 5 is an explanatory view showing the contents of processingdata obtained by reflecting data to each other in the apparatus havingthree processing units;

[0046]FIG. 6 is an explanatory view showing storage areas A to H of astorage means in the apparatus having three processing units;

[0047]FIG. 7 is an explanatory showing data managed by processing unit 1in an apparatus having two processing units so as to explain anotherembodiment of the present invention in detail;

[0048]FIG. 8 is an explanatory showing data managed by processing unit 2in the apparatus having two processing units;

[0049]FIG. 9 is an explanatory view showing the contents of processingdata obtained by reflecting data to each other in the apparatus havingtwo processing units;

[0050]FIG. 10 is an explanatory view showing a technique of reflectingdata to each other in an apparatus having three processing units withdifference processing cycles;

[0051]FIG. 11 is a block diagram showing the arrangement of a storagemeans control apparatus according to still another embodiment of thepresent invention;

[0052]FIG. 12 is a block diagram showing the arrangement of a storagemeans control apparatus according to still another embodiment of thepresent invention;

[0053]FIG. 13 is a block diagram showing the arrangement of a storagemeans control apparatus according to still another embodiment of thepresent invention;

[0054]FIG. 14 is a block diagram showing the arrangement of a storagemeans control apparatus according to still another embodiment of thepresent invention;

[0055]FIG. 15 is a block diagram showing the arrangement of a storagemeans control apparatus according to still another embodiment of thepresent invention; and

[0056]FIGS. 16A to 16I are explanatory views showing the connectionstructure in a storage means control apparatus according to stillanother embodiment of the present invention.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0057] An embodiment of the present invention will be described belowwith reference to the accompanying drawings.

[0058]FIG. 1 shows the arrangement of a storage means control apparatusaccording to this embodiment. A reflection data side 100 has aprocessing data storage means 101 and a data processing means 102. Theprocessing data storage means 101 corresponds to, e.g., a cache memoryin a communication apparatus.

[0059] A target reflection data side 120 has a processing data storagemeans 103 and a data processing means 104. The processing data storagemeans 103 corresponds to, e.g., a main storage unit outside thecommunication apparatus.

[0060] Processing data stored in the processing data storage means 101on the reflection data side 100 is read or written by the dataprocessing means 102, and the result is written in the contents of theprocessing data storage means 101.

[0061] Processing data stored in the processing data storage means 103on the target reflection data side 120 is read or written by the dataprocessing means 104, and the result is written in the contents of theprocessing data storage means 103.

[0062] Write processing by the data processing means 102 in theprocessing data storage means 101 on the reflection data side 100, andwrite processing by the data processing means 104 in the processing datastorage means 103 on the target reflection data side 120 are completelyindependently performed. If processing is required on one side, thisprocessing is performed independently of the other side.

[0063] A revealing data control means 105 stores/manages revealing datarepresenting a storage area or storage block where data in theprocessing data storage means 101 is rewritten by the data processingmeans 102.

[0064] A revealing data control means 106 stores/manages storage areawhere data in the processing data storage means 103 is rewritten by thedata processing means 104.

[0065] A priority data control means 107 stores/manages priority datarepresenting the priorities of write processing operations in eachstorage area of the processing data storage means 103 by the dataprocessing means 102 and the data processing means 104.

[0066] A inhibition data control means 108 generates inhibition datarepresenting whether stored data of the data processing means 102 can bewritten in the processing data stored in the processing data storagemeans 103 in units of storage areas of the processing data storage means103 and stores the inhibition data. The inhibition data control means108 retrieves revealing data for each storage area using outputs fromthe revealing data control means 105 and 106 in units of storage areasof the processing data storage means 103. For storage areas havingrevealing flags representing that rewrite processing has been performed,an open flag for enabling write processing is set for a data processingmeans with a high priority, and a prohibit flag is set for a dataprocessing means with a low priority.

[0067] A processing data reflection means 109 loads processing data inthe processing data storage means 101 on the reflection data side 100first. On the basis of inhibition data output from the inhibition datacontrol means 108, the processing data reflection means 109 performswrite processing in the processing data storage means 103 only instorage areas where write processing is enabled, i.e., storage areaswith set open flags for the data processing means 102.

[0068] When the reflection data side 100 and the target reflection dataside 120 change places with each other, contents stored in theprocessing data storage means 103 can be reflected by the processingdata reflection means 109 on the processing data storage means 101 onthe basis of the inhibition data managed by the inhibition data controlmeans 108.

[0069] The operation procedures of the control apparatus according tothis embodiment will be described next in more detail.

[0070] For the descriptive convenience, assume that one processing unitis constituted by a processing data storage means and an associated dataprocessing means, and a total of three processing units (processingunits 1, 2, and 3) are arranged. Each processing unit has means formanaging processing data, revealing data, inhibition data, and prioritydata. The processing units have data processing means 1, 2, and 3,respectively. The data processing means 1, 2, and 3 store/manageprocessing data 1, 2, and 3, respectively.

[0071]FIGS. 2, 3, and 4 show data of the processing units 1, 2, and 3.FIG. 2 shows data corresponding to the processing unit 1 in a tableformat, i.e., processing data 1 (201) before processing by the dataprocessing means 1, processing data 1 (202) after processing, revealingdata 1 to 3 (203 to 205), priority data (206), inhibition data 2 (207)exclusively used for the data processing means 2 as another dataprocessing means adjacent to the data processing means 1, and inhibitiondata 3 (208) exclusively used for the data processing means 3.

[0072] Similarly, FIGS. 3 and 4 show data corresponding to theprocessing units 2 and 3, respectively. FIG. 3 shows, as datacorresponding to the processing unit 2, processing data 2 (301) beforeprocessing by the data processing means 2, processing data 2 (302) afterprocessing, revealing data 1 to 3 (303 to 305), priority data (306),inhibition data 1 (307) exclusively used for the data processing means1, and inhibition data 3 (308) exclusively used for the data processingmeans 3. FIG. 4 shows, as data corresponding to processing unit 3,processing data 3 (401) before processing by the data processing means3, processing data 3 (402) after processing, revealing data 1 to 3 (403to 405), priority data (406), inhibition data 1 (407) exclusively usedfor the data processing means 3, and inhibition data 2 (408) exclusivelyused for the data processing means 2.

[0073] Each data is divided into eight storage areas A to H, as shown inFIG. 6. For revealing data, data of each storage area represents whetherrewrite processing has been performed. For inhibition data, data of eachstorage area represents whether rewrite processing is enabled. Prioritydata has, in each storage area, priorities of contents stored in aplurality of processing data storage means, which are to be written ineach area.

[0074] Assume that all data before processing by the data processingmeans 1, 2, and 3 are identical at a certain time point. Therefore, thestorage areas A to H of each of the processing data 1 (201) to 3 (401)have identical data A0 to H0. Assume that the data processing means 1,2, and 3 independently rewrite these identical data before processinginto the processing data 1 (202) to 3 (402). The rewritten data aredifferent from each other, as shown in FIGS. 2 to 4.

[0075] Processing by the data processing means 1 will be describedfirst. The data processing means 1 has rewritten the processing data 1(201) into the processing data 1 (202). At this time, data in thestorage areas A, C, E, F, and H have been rewritten. Data in the areasB, D, and G have not been rewritten by the data processing means 1.

[0076] Data representing rewrite of the processing data (201) performedby the data processing means 1 is represented by the revealing data 1(203) in units of areas. More specifically, a revealing flag “1” is setin each of the areas A, C, E, F, and H of the revealing data 1 (203) incorrespondence with the storage areas where data have been rewritten. Norevealing flags are set in the areas B, D, and G where data have notbeen rewritten, and “0” is set in these areas.

[0077] For the data processing means 2 and 3 as well, the revealingflags are set in the revealing data 2 (304) and 3 (405) incorrespondence with areas where data processing means 2 and 3 haverewritten data.

[0078] In this manner, in accordance with an internal factor of eachprocessing unit, all the processing units are informed of the revealingdata (203, 304, 405) representing rewrite processing which has beenperformed independently of the remaining processing units. Accordingly,the revealing data of the remaining processing units can be grasped asrevealing data for external factors. More specifically, the processingunit 1 can grasp the revealing data 2 (204) and 3 (205), the processingunit 2 can grasp the revealing data 1 (303) and 3 (305), and theprocessing unit 3 can grasp the revealing data 1 (403) and 2 (404).

[0079] Procedures for preparing inhibition data in the processing unit 1will be described next. The data processing means 1 prepares theinhibition data 2 (207) and 3 (208) exclusively used for the externalfactors 2 and 3 using the revealing data 1 to 3 (203 to 205) and thepriority data (206).

[0080] First, for the inhibition data 2 (207) for the data processingmeans 2, storage areas with revealing requests of data processing means2, i.e., areas having revealing flags in the revealing data 2 (204) arechecked. The revealing flag is set for the storage area A of therevealing data 2 (204). Next, priorities for the storage area A of thepriority data 206 are referred to. The priorities for the storage area Aof the priority data 206 are set in the order of the processing units 1,2, and 3. Only the data processing means 1 has priority over the dataprocessing means 2.

[0081] The revealing flag is set for the storage area A of the revealingdata 1 (203) of data processing means 1. Accordingly, write processingby the data processing means 2 in the area A is inhibited. As a result,a prohibit flag “0” is set for the storage area A of the inhibition data2 (207) associated with the data processing means 2.

[0082] The revealing flag “1” is set for the area B of the revealingdata 2 (204) of data processing means 2. Priorities for the storage areaB of the priority data 206 are set in the order of the processing units2, 3, and 1. No data processing means have priority over the dataprocessing means 2. Since, for the storage area B, write processing bythe data processing means 2 has the highest priority, an open flag “1”is set for the storage area B of the inhibition data 2 (207).

[0083] The revealing flag “1” is set for the storage area F of therevealing data 2 (204) of the data processing means 2. Priorities forthe storage area F of the priority data 206 are set in the order of theprocessing units 3, 2, and 1. Only the data processing means 3 havepriority over the data processing means 2. No revealing flag is set forthe storage area F of the revealing data 3 (205) of the data processingmeans 3. Therefore, for the area F, the data processing means 2 has thehighest priority, and the open flag “1” is set for the storage area F ofthe inhibition data 2 (207).

[0084] The revealing flag “1” is set for the storage area H of therevealing data 2 (204) of the data processing means 2. Priorities forthe area H of the priority data 206 are set in the order of the dataprocessing means 2, 3, and 1. The remaining data processing means haveno processing with priority over write processing by the data processingmeans 2.

[0085] Therefore, for the area H, the data processing means 2 has thehighest priority, and the open flag “1” is set for the area B of theinhibition data 2 (207).

[0086] For the remaining storage areas with no revealing flags in therevealing data 2 (204) of the data processing means 2, i.e., for theareas C, D, E, and G, no rewrite requests from data processing means 2are generated. Accordingly, a prohibit flag “0” is set for each of theareas C, D, E, and G.

[0087] The inhibition data 3 (208) can be prepared following the sameprocedures as described above. Similarly, in the remaining processingunits 2 and 3 as well, the inhibition data 1 (307) and 3 (308) and theinhibition data 1 (407) and 2 (408) can be prepared.

[0088] Of storage areas with set revealing flags for all the dataprocessing means, the open flags “1” are set only for areas ofinhibition data associated with a data processing means with the highestpriority, and rewrite processing is performed only in these areas.

[0089] Procedures for reflecting data in an adjacent processing unit onprocessing data in the self processing unit will be described next. Forthe processing data 1 (202), the processing data 2 (302) and 3 (402) areto be reflected on the processing data 1 (202).

[0090] First, procedures for reflecting the processing data 2 on theprocessing data 1 will be described. Inhibition data for the dataprocessing means 2 corresponds to the inhibition data 2 (207). Openflags are set for three areas B, F, and H of this inhibition data. Theprocessing data 2 (302) can be written only in these areas with set openflags.

[0091] The processing data 2 is written in areas of processing data 1 incorrespondence with the areas with set open flags in the inhibitiondata. With this processing, data in the areas B, F, and H are rewrittenfrom B0, F1, and H1 to B2, F2, and H2, respectively. Similarly, theprocessing data 3 (402) is written in areas with set open flags in theinhibition data 3 (208). Data in the areas C, E, and G, are rewrittenfrom C1, E1, and G0 to C3, E3, and G3, respectively. When the processingdata 2 (302) and 3 (402) are reflected on the processing data 1 (202) incorrespondence with the areas with set open flags in the inhibition data2 and 3, the processing data 1 is rewritten into processing data 501shown in FIG. 5.

[0092] Even when the processing data 1 (202) and 3 (402) are reflectedon the processing data 2 (302) in accordance with the inhibition data 1and 3 following the same procedures, or the processing data 1 (202) and2 (302) are reflected on the processing data 3 (402) on the basis of theinhibition data 1 and 2, the processing data 501 shown in FIG. 5 can beobtained.

[0093] As described above, all the processing units are informed of datawhich have been independently rewritten in the remaining processingunits, and the rewritten data is reflected on the basis of theinhibition data prepared using the revealing data, the priority data,and the revealing data. With this processing, data with a high prioritycan be reflected to each other, and matching can be ensured.

[0094] The above-described embodiment corresponds to a system havingthree processing units. However, rewrite control can also be applied toa system having N (N is an integer: 2≦N) processing units.

[0095] Another embodiment with two processing units will be describednext.

[0096] Two processing units 1 and 2 control processing of processingdata 1 and 2 through data processing means 1 and 2, respectively. Eachof the processing units 1 and 2 has means for storing/managingprocessing data, revealing data, inhibition data, and priority data.

[0097]FIG. 7 shows data associated with the processing unit 1. FIG. 8shows data associated with the processing unit 2. FIG. 7 shows, in atable format, processing data 1 (701) before processing by the dataprocessing means 1, processing data 1 (702) after processing, revealingdata 1, (703), revealing data 2 (706), priority data (704), andinhibition data (705) exclusively used for the data processing means 2corresponding to an external factor in units of storage areas.

[0098]FIG. 8 shows processing data 2 (801) before processing by the dataprocessing means 2, processing data 2 (802) after processing, revealingdata 1 (803), revealing data 2 (806), priority data (804), andinhibition data (805) exclusively used for the data processing means 1corresponding to an external factor in units of storage areas.

[0099] As in the above-described embodiment in which three processingblocks are present, assume that data before processing by the dataprocessing means 1 and 2 match at a certain time point. Storage areas Ato H of each of the processing data 1 (701) shown in FIG. 7 and theprocessing data 2 (801) shown in FIG. 8 have identical data A0 to H0.Assume that the data processing means 1 and 2 independently rewritethese identical data into the processing data 1 (702) and 2 (802)different from each other, as shown in FIGS. 7 and 8.

[0100] Of data associated with the data processing means 1, theprocessing data 1 has been rewritten from (701) to (702). Data in thestorage areas A, C, E, F, and H have been rewritten. Data in the areasB, D, and G have not been rewritten by the data processing means 1. Therevealing data 1 (703) represents areas where the processing data 2(701) has been rewritten by the data processing means 1, as shown inFIG. 7. The revealing flags “1” are set for the areas A, C, E, F, and Hof the revealing data 1 (703) corresponding to the areas where rewriteprocessing. No flags are set for the areas B, D, and G where no rewriteprocessing has been performed.

[0101] Similarly, for the revealing data corresponding to storage areaswhere the data processing means 2 has performed rewrite processing aswell, the revealing flags “1” are set for the revealing data 2 (706)managed by the processing unit 1 shown in FIG. 7 and the revealing data2 (803) managed by the processing unit 2 shown in FIG. 8. Even in thesystem having two processing units, the self revealing data must beexchanged between the processing blocks.

[0102] The data processing means 1 prepares the inhibition data 2 (705)exclusively used for the external factor 2 using the revealing data(703) and the priority data (704). In storage areas with revealingrequests of the data processing means 1, i.e., in the storage areas ofthe revealing data 1 (703), inhibition data for areas with set revealingflags are determined. The revealing flags are set for the areas A and Cof the revealing data 1 (703). Priorities for the areas A and C in thepriority data 704 are referred to. Since, in the areas A and C, theprocessing block 1 has priority over processing unit 2, the dataprocessing means 1 has priority over the data processing means 2.Therefore, prohibit flags “0” are set for the areas A and C of theinhibition data (705) of the data processing means 2.

[0103] The revealing flags are set for the areas E, F, and H of therevealing data 1 (703) of the data processing means 1. Priorities forthe areas E, F, and H in the priority data 704 are referred to. Since,in the areas E, F, and H, the processing unit 2 has priority overprocessing unit 1, the data processing means 2 has priority over thedata processing means 1. Therefore, for the storage areas E, F, and H,the data processing means 2 has priority over the data processing means1, and open flags “1” are set for the areas E, F, and H of theinhibition data (705).

[0104] In the remaining areas B, D, and G without set revealing flags inthe revealing data 703, rewrite processing by the processing unit 1 hasnot been performed. Therefore, the open flag “1” is set for each of theareas B, D, and G of the inhibition data 705 of the data processingmeans 2. This processing is also performed in the processing unit 2,thereby generating the inhibition data 1 (805) shown in FIG. 8.

[0105] By reflecting data between the processing units 1 and 2,processing data (901) with matching can be obtained, as shown in FIG. 9.

[0106] In the above-described two embodiments, it is assumed that dataare reflected at the same time point. However, reflection processingneed not always be performed at the same timing in the differentprocessing units. However, to ensure consistency of processing,reflection processing is preferably performed after the data processingmeans of each processing unit completes processing, or immediatelybefore the data processing means starts next processing. In this case aswell, processing by the data processing means need not be performed atthe same period.

[0107] When the processing units have different processing periods, adata processing means having a short processing period performsprocessing a plurality of number of times when a data processing meanshaving a long processing period is performing processing.

[0108] In this case, after the data processing means having the longperiod starts processing, revealing data obtained by accumulatingprocessing operations by the data processing means having the shortperiod is reflected, thereby ensuring matching.

[0109] This processing will be described with reference to FIG. 10.Assume that three processing blocks 1 to 3 are present, the processingblock 1 has the shortest processing period, and the processing block 3has the longest processing period. The processing block 1 has alreadycompleted processing in five cycles S11 to S15 for a time the processingblock 3 takes to start processing in cycle S31 and complete thisprocessing. With this processing, rewrite processing has been performedin areas A, D, and G of storage areas A to H. The processing block 3receives, from the processing block 1, data representing that revealingflags are set for the areas A, D, and G in the processing block 1 almostat the timing of ending processing in cycle S31 and starting the nextprocessing in cycle S32. With this processing, all revealing data can beaccumulated and reflected on data stored in the self processing datastorage means.

[0110] The priority data or revealing data can change along with theelapse of time, and accordingly, inhibition data may also change. Insuch a case, for the processing unit 1, the revealing data 1 (203) to 3(205) and the priority data (206) shown in FIG. 2 are occasionallyupdated to the latest data along with the elapse of time. With thisprocessing, the inhibition data 2 (207) and 3 (208) prepared on thebasis of these data can be updated. In the apparatus shown in FIG. 1,data on the reflection data side 100 may be updated by the CPU in thecommunication apparatus, and data on the target reflection data side 120may be updated by the host CPU arranged outside the communicationapparatus to control the entire system.

[0111] In the embodiment shown in FIG. 1, the target reflection dataside 120 has the data processing means 104, and accordingly, therevealing data control means 106 for managing revealing data associatedwith contents stored in the processing data storage means 103 isarranged. However, the present invention can also be applied to anarrangement shown in FIG. 11 in which a target reflection date side 120a has only a processing data storage means 103. In this embodiment, onereflection data side 100 may be arranged, or in many cases, a pluralityof reflection data sides 100 are arranged. Revealing data of two or morereflection data sides 100 are exchanged, thereby writing data with ahigh priority on the target reflection data side 120 a.

[0112] The present invention can also be applied to an arrangement inwhich a plurality of target reflection data sides are arranged, and thereflection data side 100 in FIG. 1 and the target reflection data side120 a in FIG. 11 are simultaneously arranged.

[0113] In the above-described embodiments, each processing unit managesonly one processing data and reflects the latest data of the remainingprocessing units. However, even when two or more processing data aremanaged by one processing unit, data of the remaining processing unitscan be reflected on a plurality of processing data in the selfprocessing unit, as in the above-described embodiments.

[0114] In still another embodiment of the present invention shown inFIG. 12, a reflection data side 100 has a plurality of processing datastorage means 101 a, . . . , 101 b and one data processing means 102.The data processing means 102 performs read/write processing from/in theprocessing data storage means 101 a, . . . , 101 b. A target reflectiondata side 120 has a plurality of processing data storage means 103 a, .. . , 103 b and one data processing means 104. The data processing means104 performs read/write processing from/in the processing data storagemeans 103 a, . . . , 103 b. The present invention can also be applied tosuch an apparatus.

[0115] In the above-described embodiments, the target reflection dataside has means for managing storage/rewrite of revealing data, prioritydata, processing data, and inhibition data. However, these means may bearranged on the reflection data side. Alternatively, instead ofarranging these means on any one of the reflection data side and thetarget reflection data side, the means may be centralized in a neutralstate.

[0116] For example, in the embodiment shown in FIG. 1, the revealingdata control means 105 and 106, the priority data control means 107, theinhibition data control means 108, and the processing data reflectionmeans 109 may be arranged on any one of the reflection data side 100 andthe target reflection data side 120. Alternatively, these means may beneutralized.

[0117] The present invention may have the arrangement of still anotherembodiment shown in FIG. 13. In this embodiment, a reflection data side1000 has a plurality of processing data storage means 1001 a to 1001 dand a plurality of data processing means 1002 a to 1002 d. The dataprocessing means 1002 a to 1002 d perform read/write processing from/inthe processing data storage means 1001 a to 1010 d, respectively.Revealing data representing storage areas where the data processingmeans 1002 a to 1002 d have rewritten data in the processing datastorage means 1001 a to 1010 d, respectively, are stored/managed by arevealing data control means 1005.

[0118] In this embodiment as well, data rewritten in the processing datastorage means 1001 a to 1001 d are reflected on a processing datastorage means 1003 on a target reflection data side 1020 by a inhibitiondata control means 1008 and a processing data reflection means 1009 onthe basis of priority data stored/managed by a priority data controlmeans 1007 and revealing data stored/managed by the revealing datacontrol means 1005.

[0119] In still another embodiment of the present invention, data isreflected between at least two of first, second, . . . , nth (n is aninteger: 2≦n) storage means. As shown in FIG. 14, in this embodiment, areflection data side 2000 has n processing data storage means 2001 to200 n and n data processing means 2011 to 201 n. Data stored in (n-1)processing data storage means 2001 to 200(n-1) are rewritten by dataprocessing means 2011 to 201(n-1), respectively. Storage areas where thedata have been rewritten are stored/managed by corresponding revealingdata control means 2021 to 202(n-1). The inhibition data control means2032 and the processing data reflection means 2031 reflect the datarewritten in the processing data storage means 2001 to 200(n-1) on theprocessing data storage means 200 n on the basis of revealing datastored in the revealing data control means 2021 to 202(n-1) and prioritydata stored in the priority data control means 2033.

[0120] In still another embodiment of the present invention, data storedin the first, second, . . . , nth storage means are reflected among thefirst, second, . . . , nth storage means. As shown in FIG. 15, datastored by n processing data storage means 3001 to 300 n are rewritten bydata processing means 3011 to 301 n, respectively. Storage areas wherethe data have been rewritten are managed by corresponding revealing datacontrol means 3021 to 302 n. The inhibition data control means 3032 andthe processing data reflection means 3031 reflect the data rewritten inthe processing data storage means 3001 to 300 n on data stored in theprocessing data storage means 3001 to 300 n on the basis of therevealing data and priority data managed by the priority data controlmeans 3033.

[0121] In the above-described embodiments, each processing unit reflectsprocessing data on data of the remaining processing units, thusconstituting a so-called complete network. However, the processing unitsneed not always be connected with the complete network structure. Forexample, as shown in FIGS. 16A to 16I (“Computer Architecture”, Ohm-sha,Ltd., Takanobu Baba, p. 325), as a connection structure of a pluralityof processing units, a one-dimensional array network structure, a ringnetwork structure, a three-dimensional chordal ring network structure, atwo-dimensional complete network, a binary tree network, atwo-dimensional mesh network, a three-dimensional mesh network, atwo-dimensional torus network, or a hypercube network may be used.Alternatively, a mutual network structure having any one of topologicalstructures, e.g., a structure by combining these structures may be used.

[0122] In addition, the processing units need not constitute a staticnetwork. Any one of dynamic networks, or a composite network constitutedby a dynamic network and a static network may be used. Reflection amongthe units may be performed bidirectionally or unidirectionally.Reflection between certain units may be omitted. The direction ofreflection among the units may be dynamically changed.

What is claimed is:
 1. A storage means control method of reflecting datastored in first storage means on data stored in second storage means,comprising the steps of: causing first processing means to perform writeprocessing in said first storage means; causing revealing data controlmeans to manage revealing data representing storage areas where saidfirst processing means has performed write processing in said firststorage means; causing priority data control means to manage prioritydata representing a priority of write processing of said firstprocessing means in units of storage areas of said second storage means;causing inhibition data control means to generate and manage inhibitiondata for inhibiting write processing in each storage area of said secondstorage means using the priority data stored in said priority datacontrol means and the revealing data managed by said revealing datacontrol means; and causing processing data reflection means to reflectthe data written in said first storage means on said second storagemeans on the basis of the inhibition data managed by said inhibitiondata control means.
 2. A storage means control method of reflecting datastored in a plurality of first storage means on data stored in at leastone second storage means, comprising the steps of: causing a pluralityof first processing means to perform write processing in said firststorage means, respectively; causing revealing data control means tomanage revealing data representing storage areas where said firstprocessing means have performed write processing in said first storagemeans; causing priority data control means to manage priority datarepresenting a priority of write processing of each of said firstprocessing means in units of storage areas of said second storage means;causing inhibition data control means to generate and manage inhibitiondata for inhibiting write processing in each storage area of said secondstorage means using the priority data stored in said priority datacontrol means and the revealing data managed by said revealing datacontrol means; and causing processing data reflection means to reflectthe data written in each of said first storage means on said secondstorage means on the basis of the inhibition data managed by saidinhibition data control means.
 3. A storage means control method ofreflecting data stored in first storage means on data stored in secondstorage means, comprising the steps of: causing first processing meansto perform write processing in said first storage means; causing secondprocessing means to perform write processing in said second storagemeans; causing first revealing data control means to manage firstrevealing data representing storage areas where said first processingmeans has performed write processing in said first storage means;causing second revealing data control means to manage second revealingdata representing storage areas where said second processing means hasperformed write processing in said second storage means; causingpriority data control means to manage priority data representing apriority of write processing of each of said first and second processingmeans in units of storage areas of said second storage means; causinginhibition data control means to generate and manage inhibition data forinhibiting write processing in each storage area of said second storagemeans using the priority data stored in said priority data control meansand the first and second revealing data managed by said first and secondrevealing data control means, respectively; and causing processing datareflection means to reflect the data written in said first storage meanson said second storage means on the basis of the inhibition data managedby said inhibition data control means.
 4. A storage means control methodof reflecting data among at least two of first, second, . . . , Nth (Nis an integer: 2≦N) storage means each storing data, comprising thesteps of: causing first, second, . . . , Nth processing means to performwrite processing in said first, second, . . . , Nth storage means,respectively; causing first, second, . . . , Nth revealing data controlmeans to manage first, second, . . . , Nth revealing data representingstorage areas where said first, second, . . . , Nth processing meanshave performed write processing in said first, second, . . . , Nthstorage means, respectively; causing priority data control means tomanage priority data representing a priority of write processing of atleast one of said first, second, . . . , Nth processing meanscorresponding to storage means other than at least one of said first,second, . . . , Nth storage means in units of storage areas of the atleast one of said storage means; causing inhibition data control meansto generate and manage inhibition data for inhibiting write processingin each storage area of said at least one of said storage means by saidat least one of said processing means using the priority data managed bysaid priority data control means and the first, second, . . . , Nthrevealing data managed by said first, second, . . . , Nth revealing datacontrol means, respectively; and causing processing data reflectionmeans to reflect the data written in said at least one of said storagemeans on the data written in said storage means corresponding to said atleast one of said processing means on the basis of the inhibition datamanaged by said inhibition data control means.
 5. A storage meanscontrol method of mutually reflecting data stored in first, second, . .. , Nth (N is an integer: 2≦N) storage means on the data stored in saidfirst, second, . . . , Nth storage means, comprising the steps of:causing first, second, . . . , Nth processing means to perform writeprocessing in said first, second, . . . , Nth storage means,respectively; causing first, second, . . . , Nth revealing data controlmeans to manage first, second, . . . , Nth revealing data representingstorage areas where said first, second, . . . , Nth processing meanshave performed write processing in said first, second, . . . , Nthstorage means, respectively; causing priority data control means tomanage priority data representing a priority of write processing of eachof said first, second, . . . , Nth processing means in units of storageareas of each of said first, second, . . . , Nth storage means; causinginhibition data control means to generate and manage inhibition data forinhibiting write processing in each storage area of said first storagemeans by said second, third, . . . , Nth processing means, inhibitingwrite processing in each storage area of said second storage means bysaid first, third, . . . , Nth processing means, inhibiting writeprocessing in each storage area of said third storage means by saidfirst, second, . . . , Nth processing means, . . . , and inhibitingwrite processing in each storage area of said Nth storage means by saidfirst, second, . . . , (N-1)th processing means, using the priority datamanaged by said priority data control means and the first, second, . . ., Nth revealing data managed by said first, second, . . . , Nthrevealing data control means, respectively; and causing processing datareflection means to reflect the data written in said second, third, . .. , Nth storage means on the data written said first storage means,reflect the data written in said first, third, . . . , Nth storage meanson the data written said second storage means, reflect the data writtenin said first, second, . . . , Nth storage means on the data writtensaid third storage means, . . . , and reflect the data written in saidfirst, second, . . . , (N-1)th storage means on the data written saidNth storage means on the basis of the inhibition data managed by saidinhibition data control means.
 6. A method according to claim 1, furthercomprising the steps of changing with time at least one of the revealingdata managed by said revealing data control means and the priority datamanaged by said priority data control means, and accordingly changingwith time the inhibition data managed by said inhibition data controlmeans.
 7. A method according to claim 6, wherein the step of changing atleast one of the revealing data and the priority data comprises changingat least one of the revealing data and the priority data along with aprogress in processing by said first processing means, and accordinglychanging the inhibition data.
 8. A method according to claim 4, furthercomprising the steps of changing with time at least one of the first,second, . . . , Nth revealing data managed by said first, second, . . ., Nth revealing data control means, respectively, and the priority datamanaged by said priority data control means, and accordingly changingwith time the inhibition data managed by said inhibition data controlmeans.
 9. A method according to claim 8, wherein the step of changing atleast one of the first, second, . . . , Nth revealing data and thepriority data comprises changing at least one of the first, second, . .. , Nth revealing data and the priority data along with a progress inprocessing by said first, second, . . . , Nth processing means, andaccordingly changing the inhibition data.
 10. A method according toclaim 1, wherein the step of reflecting the data stored in said firststorage means on the data stored in said second storage means isperformed upon completion of write processing in said first storagemeans by said first processing means.
 11. A method according to claim 5,wherein the step of reflecting the data stored in said second, third, .. . , Nth storage means on the data stored in said first storage meansby said processing data reflection means is performed upon completion ofwrite processing in said first storage means by said first processingmeans, the step of reflecting the data stored in said first, third, . .. , Nth storage means on the data stored in said second storage means bysaid processing data reflection means is performed upon completion ofwrite processing in said second storage means by said second processingmeans, and the step of reflecting the data stored in said first, second,. . . , (N-th) storage means on the data stored in said Nth storagemeans by said processing data reflection means is performed uponcompletion of write processing in said Nth storage means by said Nthprocessing means.
 12. A method according to claim 4, further comprisingthe step of causing said revealing data control means to accumulate andmanage the first, second, . . . , Nth revealing data obtained when saidfirst, second, . . . , Nth processing means perform processing in saidfirst, second, . . . , Nth storage means excluding Jth (J is an integer:1≦J≦N) storage means, respectively, before Jth processing means of thefirst, second, . . . , Nth processing means completes processing in saidJth storage means.
 13. A storage means control apparatus for reflectingdata stored in first storage means on data stored in second storagemeans, comprising: first write processing means for performing writeprocessing in said first storage means; revealing data control means formanaging revealing data representing storage areas where said firstwrite processing means has performed write processing in said firststorage means; priority data control means for managing priority datarepresenting a priority of write processing of said first writeprocessing means in units of storage areas of said second storage means;inhibition data control means for generating and managing inhibitiondata for inhibiting write processing in each storage area of said secondstorage means using the priority data managed by said priority datacontrol means and the revealing data managed by said revealing datacontrol means; and processing data reflection means for writing the datawritten in said first storage means in said second storage means on thebasis of the inhibition data managed by said inhibition data controlmeans.
 14. A storage means control apparatus for reflecting data storedin a plurality of first storage means on data stored in at least onesecond storage means, comprising: a plurality of first write processingmeans for performing write processing in said first storage means,respectively; revealing data control means for managing revealing datarepresenting storage areas where said first write processing means haveperformed write processing in said first storage means; priority datacontrol means for managing priority data representing a priority ofwrite processing of each of said first write processing means in unitsof storage areas of said second storage means; inhibition data controlmeans for generating and managing inhibition data for inhibiting writeprocessing in each storage area of said second storage means using thepriority data managed by said priority data control means and therevealing data managed by said revealing data control means; andprocessing data reflection means for writing the data written in each ofsaid first storage means in said second storage means on the basis ofthe inhibition data managed by said inhibition data control means.
 15. Astorage means control apparatus for reflecting data stored in firststorage means on data stored in second storage means, comprising: firstwrite processing means for performing write processing in said firststorage means; second write processing means for performing writeprocessing in said second storage means; first revealing data controlmeans for managing first revealing data representing storage areas wheresaid first processing means has performed write processing in said firststorage means; second revealing data control means for managing secondrevealing data representing storage areas where said second processingmeans has performed write processing in said second storage means;priority data control means for managing priority data representing apriority of write processing of each of said first and second processingmeans in units of storage areas of said second storage means; inhibitiondata control means for generating and managing inhibition data forinhibiting write processing in each storage area of said second storagemeans using the priority data managed by said priority data controlmeans and the first and second revealing data managed by said first andsecond revealing data control means, respective-
 17. A storage meanscontrol apparatus for mutually reflecting data stored in first, second,. . . , Nth storage means on the data stored in said first, second, . .. , Nth storage means, comprising: first, second, . . . , Nth processingmeans for performing write processing in said first, second, . . . , Nthstorage means, respectively; first, second, . . . , Nth revealing datacontrol means for managing first, second, . . . , Nth revealing datarepresenting storage areas where said first, second, . . . , Nthprocessing means have performed write processing in said first, second,. . . , Nth storage means, respectively; priority data control means formanaging priority data representing a priority of write processing ofeach of said first, second, . . . , Nth processing means in units ofstorage areas of each of said first, second, . . . , Nth storage means;inhibition data control means for generating and managing inhibitiondata for inhibiting write processing in each storage area of said firststorage means by said second, third, . . . , Nth processing means,inhibiting write processing in each storage area of said second storagemeans by said first, third, . . . , Nth processing means, inhibitingwrite processing in each storage area of said third storage means bysaid first, second, . . . , Nth processing means, . . . , and inhibitingwrite processing in each storage area of said Nth storage means by saidfirst, second, . . . , (N-1)th processing means, using the priority datamanaged by said priority data control means and the first, second, . . ., Nth revealing data managed by said first, second, . . . , Nthrevealing data control means, respectively; and processing datareflection means for reflecting the data written in said second, third,. . . , Nth storage means on the data written said first storage means,reflecting the data written in said first, third, . . . , Nth storagemeans on the data written said second storage means, reflecting the datawritten in said first, second, . . . , Nth storage means on the datawritten said third storage means, . . . , and reflecting the datawritten in said first, second, . . . , (N-1)th storage means on the datawritten said Nth storage means on the basis of the inhibition datamanaged by said inhibition data control means.
 18. An apparatusaccording to claim 13, further comprising means for changing with timeat least one of the revealing data managed by said revealing datacontrol means and the priority data managed by said priority datacontrol means, and wherein the inhibition data managed by saidinhibition data control means is accordingly changed with time.
 19. Anapparatus according to claim 18, wherein said means for changing atleast one of the revealing data and the priority data changes at leastone of the revealing data and the priority data along with a progress inprocessing by said first processing means, and accordingly changes theinhibition data.
 20. An apparatus according to claim 16, furthercomprising means for changing with time at least one of the first,second, . . . , Nth revealing data managed by said first, second, . . ., Nth revealing data control means, respectively, and the priority datamanaged by said priority data control means, and wherein the inhibitiondata managed by said inhibition data control means is accordinglychanged with time.
 21. An apparatus according to claim 20, wherein saidmeans for changing at least one of the first, second, . . . , Nthrevealing data and the priority data changes at least one of the first,second, . . . , Nth revealing data and the priority data along with aprogress in processing by said first, second, . . . , Nth processingmeans, and accordingly changes the inhibition data.
 22. An apparatusaccording to claim 13, wherein said processing data reflection meansperforms processing of reflecting the data stored in said first storagemeans on the data stored in said second storage means upon completion ofwrite processing in said first storage means by said first processingmeans.
 23. An apparatus according to claim 17, wherein said processingdata reflection means performs processing of reflecting the data storedin said second, third, . . . , Nth storage means on the data stored insaid first storage means upon completion of write processing in saidfirst storage means by said first processing means, processing ofreflecting the data stored in said first, third, . . . , Nth storagemeans on the data stored in said second storage means upon completion ofwrite processing in said second storage means by said second processingmeans, and processing of reflecting the data stored in said first,second, . . . , (N-th) storage means on the data stored in said Nthstorage means upon completion of write processing in said Nth storagemeans by said Nth processing means.
 24. An apparatus according to claim16, wherein said revealing data control means accumulates and managesthe first, second, . . . , Nth revealing data obtained when said first,second, . . . , Nth processing means perform processing in said first,second, . . . , Nth storage means excluding Jth storage means,respectively, before Jth processing means of the first, second, . . . ,Nth processing means completes processing in said Jth storage means.